package com.mryang.hds.mapper;

import com.mryang.hds.entity.Notify;
import com.mryang.hds.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.PutMapping;

import java.util.List;

/**
 * @author Genius
 * @version 1.0.0
 * @ClassName NotifyMapper.java
 * @Description TODO
 * @createTime 2023年03月22日 21:07:00
 */

@Mapper
public interface NotifyMapper {

    void insertNotify(@Param("notify") Notify notify);


    List<Notify> getMesByUserId(@Param("userId") Integer userId);

    // 管理员/医护人员 查看自己的发出的消息
    List<Notify> getMesByCreateId(@Param("token") User token);

    // 修改消息信息
    void editById(@Param("notify") Notify notify);

    // 修改消息状态（是否删除）
    void deleteNotify(@Param("nid") Integer nid);

    // 用户个人查看自己的消息
    List<Notify> getNotifyByUID(@Param("uid") Integer uid);

    // 修改用户查阅状态
    void editLookById(@Param("nid") Integer nid);
    // 修改用户查阅状态(包含查阅时间)
    void editLookTimeById(@Param("nid") Integer nid,@Param("looktime") String looktime);

    // 根据 被通知用户、创建人、创建时间、消息内容、是否已读 等条件检索
    List<Notify> searchNotify(@Param("notify") Notify notify);

    // 删除用户所对应的数据
    void delMsgByUId(@Param("userId") Integer userId);
}
